package com.jie.commonlib.network.http.parse

import androidx.annotation.Keep
import java.lang.reflect.ParameterizedType
import java.lang.reflect.Type

/**
 * 泛型参数类型
 *
 * @author ZhangJun
 * @date 2017/10/20
 */
@Keep
class ParameterizedTypeImpl internal constructor(private val raw: Class<*>, args: Array<Type>?) :
    ParameterizedType {
    private val args: Array<Type> = args ?: arrayOf()
    override fun getActualTypeArguments(): Array<Type> {
        return args
    }

    override fun getRawType(): Type {
        return raw
    }

    override fun getOwnerType(): Type?{
        return null
    }

}